<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content=
    "application/xhtml+xml; charset=iso-8859-1" />
    <title>
      PulseAudio-13.0
    </title>
    <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.78.1" />
    <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
    "text/css" media="print" />
  </head>
  <body class="blfs" id="blfs-2020-04-02">
    <div class="navheader">
      <h4>
        Beyond Linux<sup>�</sup> From Scratch <span class="phrase">(System
        V</span> Edition) - Version 2020-04-02
      </h4>
      <h3>
        Chapter&nbsp;42.&nbsp;Multimedia Libraries and Drivers
      </h3>
      <ul>
        <li class="prev">
          <a accesskey="p" href="pipewire.html" title=
          "Pipewire-0.3.2">Prev</a>
          <p>
            Pipewire-0.3.2
          </p>
        </li>
        <li class="next">
          <a accesskey="n" href="sbc.html" title="SBC-1.4">Next</a>
          <p>
            SBC-1.4
          </p>
        </li>
        <li class="up">
          <a accesskey="u" href="libdriv.html" title=
          "Chapter&nbsp;42.&nbsp;Multimedia Libraries and Drivers">Up</a>
        </li>
        <li class="home">
          <a accesskey="h" href="../index.html" title=
          "Beyond Linux� From Scratch     (System V Edition) - Version 2020-04-02">
          Home</a>
        </li>
      </ul>
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <h1 class="sect1">
        <a id="pulseaudio" name="pulseaudio"></a>PulseAudio-13.0
      </h1>
      <div class="package" lang="en" xml:lang="en">
        <h2 class="sect2">
          Introduction to PulseAudio
        </h2>
        <p>
          <span class="application">PulseAudio</span> is a sound system for
          POSIX OSes, meaning that it is a proxy for sound applications. It
          allows you to do advanced operations on your sound data as it
          passes between your application and your hardware. Things like
          transferring the audio to a different machine, changing the sample
          format or channel count and mixing several sounds into one are
          easily achieved using a sound server.
        </p>
        <p>
          This package is known to build and work properly using an LFS-9.1
          platform.
        </p>
        <h3>
          Package Information
        </h3>
        <div class="itemizedlist">
          <ul class="compact">
            <li class="listitem">
              <p>
                Download (HTTP): <a class="ulink" href=
                "https://www.freedesktop.org/software/pulseaudio/releases/pulseaudio-13.0.tar.xz">
                https://www.freedesktop.org/software/pulseaudio/releases/pulseaudio-13.0.tar.xz</a>
              </p>
            </li>
            <li class="listitem">
              <p>
                Download MD5 sum: e41d606f90254ed45c90520faf83d95c
              </p>
            </li>
            <li class="listitem">
              <p>
                Download size: 1.8 MB
              </p>
            </li>
            <li class="listitem">
              <p>
                Estimated disk space required: 93 MB (add 2 MB for tests)
              </p>
            </li>
            <li class="listitem">
              <p>
                Estimated build time: 0.5 SBU (Using parallelism=4; add 0.6
                SBU for tests)
              </p>
            </li>
          </ul>
        </div>
        <h3>
          PulseAudio Dependencies
        </h3>
        <h4>
          Required
        </h4>
        <p class="required">
          <a class="xref" href="libsndfile.html" title=
          "libsndfile-1.0.28">libsndfile-1.0.28</a>
        </p>
        <h4>
          Recommended
        </h4>
        <p class="recommended">
          <a class="xref" href="alsa-lib.html" title=
          "alsa-lib-1.2.2">alsa-lib-1.2.2</a>, <a class="xref" href=
          "../general/dbus.html" title="dbus-1.12.16">dbus-1.12.16</a>,
          <span class="phrase"><a class="xref" href="../general/elogind.html"
          title="elogind-243.7">elogind-243.7</a>,</span> <a class="xref"
          href="../general/glib2.html" title="GLib-2.64.1">GLib-2.64.1</a>,
          <a class="xref" href="../postlfs/libcap.html" title=
          "libcap-2.33 with PAM">libcap-2.33 with PAM</a>, <a class="xref"
          href="speex.html" title="Speex-1.2.0">Speex-1.2.0</a> and <a class=
          "xref" href="../x/x7lib.html" title="Xorg Libraries">Xorg
          Libraries</a>
        </p>
        <h4>
          Optional
        </h4>
        <p class="optional">
          <a class="xref" href="../basicnet/avahi.html" title=
          "Avahi-0.8">Avahi-0.8</a>, <a class="xref" href=
          "../general/bluez.html" title="BlueZ-5.54">BlueZ-5.54</a>,
          <a class="xref" href="../general/fftw.html" title=
          "fftw-3.3.8">fftw-3.3.8</a>, <a class="xref" href=
          "../gnome/GConf.html" title="GConf-3.2.6">GConf-3.2.6</a>,
          <a class="xref" href="../x/gtk3.html" title=
          "GTK+-3.24.16">GTK+-3.24.16</a>, <a class="xref" href=
          "libsamplerate.html" title=
          "libsamplerate-0.1.9">libsamplerate-0.1.9</a>, <a class="xref"
          href="sbc.html" title="SBC-1.4">SBC-1.4</a> (Bluetooth support),
          <a class="xref" href="../general/valgrind.html" title=
          "Valgrind-3.15.0">Valgrind-3.15.0</a>, <a class="ulink" href=
          "http://www.jackaudio.org/">JACK</a>, <a class="ulink" href=
          "http://0pointer.de/lennart/projects/libasyncns/">libasyncns</a>,
          <a class="ulink" href="http://www.lirc.org/">LIRC</a>, <a class=
          "ulink" href="http://gstreamer.freedesktop.org/src/orc/">ORC</a>,
          <a class="ulink" href=
          "https://sourceforge.net/projects/soxr/">soxr</a>, <a class="ulink"
          href="http://tdb.samba.org/">TDB</a>, <a class="ulink" href=
          "http://freedesktop.org/software/pulseaudio/webrtc-audio-processing/">
          WebRTC AudioProcessing</a> and <a class="ulink" href=
          "http://www.xenproject.org/">XEN</a>
        </p>
        <p class="usernotes">
          User Notes: <a class="ulink" href=
          "http://wiki.linuxfromscratch.org/blfs/wiki/pulseaudio">http://wiki.linuxfromscratch.org/blfs/wiki/pulseaudio</a>
        </p>
      </div>
      <div class="installation" lang="en" xml:lang="en">
        <h2 class="sect2">
          Installation of PulseAudio
        </h2>
        <p>
          Install <span class="application">PulseAudio</span> by running the
          following commands:
        </p>
        <pre class="userinput">
<kbd class="command">./configure --prefix=/usr                \
            --sysconfdir=/etc            \
            --localstatedir=/var         \
            --disable-bluez4             \
            --disable-bluez5             \
            --disable-rpath              \
            --with-systemduserunitdir=no &amp;&amp;
make</kbd>
</pre>
        <p>
          To test the results, issue: <span class="command"><strong>make
          check</strong></span>.
        </p>
        <p>
          Now, as the <code class="systemitem">root</code> user:
        </p>
        <pre class="root">
<kbd class="command">make install</kbd>
</pre>
        <p>
          While still as the <code class="systemitem">root</code> user,
          remove the <span class="application">D-Bus</span> configuration
          file for the system wide daemon to avoid creating unnecessary
          system users and groups:
        </p>
        <pre class="root">
<kbd class="command">rm -fv /etc/dbus-1/system.d/pulseaudio-system.conf</kbd>
</pre>
      </div>
      <div class="commands" lang="en" xml:lang="en">
        <h2 class="sect2">
          Command Explanations
        </h2>
        <p>
          <em class="parameter"><code>--disable-bluez4</code></em>: This
          switch disables support for <span class="application">BlueZ</span>
          version 4 in favour of <span class="application">BlueZ</span>
          version 5 since the latter also installs compatibility library for
          the earlier version.
        </p>
        <p>
          <em class="parameter"><code>--disable-bluez5</code></em>: This
          switch prevents a runtime error if <a class="xref" href=
          "../general/dbus.html" title="dbus-1.12.16">dbus-1.12.16</a> and
          <a class="xref" href="sbc.html" title="SBC-1.4">SBC-1.4</a> are
          both installed but <a class="xref" href="../general/bluez.html"
          title="BlueZ-5.54">BlueZ-5.54</a> is not installed. Remove this if
          you have installed all three packages.
        </p>
        <p>
          <em class="parameter"><code>--disable-rpath</code></em>: This
          switch prevents linker from adding a hardcoded runtime path to the
          installed programs and libraries.
        </p>
      </div>
      <div class="configuration" lang="en" xml:lang="en">
        <h2 class="sect2">
          Configuring PulseAudio
        </h2>
        <div class="sect3" lang="en" xml:lang="en">
          <h3 class="sect3">
            <a id="pulseaudio-config" name="pulseaudio-config"></a>
          </h3>
          <h4 class="title">
            <a id="pulseaudio-config" name="pulseaudio-config"></a>Config
            Files
          </h4>
          <p>
            There are system wide configuration files: <code class=
            "filename">/etc/pulse/daemon.conf</code>, <code class=
            "filename">/etc/pulse/client.conf</code>, <code class=
            "filename">/etc/pulse/default.pa</code>, and user configuration
            files with the same names in <code class=
            "filename">~/.config/pulse</code>. User configuration files take
            precedence over system wide ones.
          </p>
        </div>
        <div class="sect3" lang="en" xml:lang="en">
          <h3 class="sect3"></h3>
          <h4 class="title">
            <a id="idm140006416645152" name=
            "idm140006416645152"></a>Configuration Information
          </h4>
          <p>
            You may have to configure the audio system. You can start
            <span class="application">pulseaudio</span> in command line mode
            using <span class="command"><strong>pulseaudio -C</strong></span>
            and then list various information and change settings. See
            <span class="command"><strong>man
            pulse-cli-syntax</strong></span>.
          </p>
          <p>
            If <span class="application">pulseaudio</span> was working but
            you no-longer have sound, after checking for hardware issues
            (speakers or headphones not connected, external amplifier not
            connected) you may need to fix it.
          </p>
          <p>
            One suggestion is to close the application, such as <span class=
            "application">firefox</span> where sound has stopped working,
            then run: <span class="command"><strong>pactl list short
            sinks</strong></span> followed by: <span class=
            "command"><strong>pacmd set-default-sink &lt;sink
            #&gt;</strong></span> and then restart the application.
          </p>
          <p>
            If that does not work, a more drastic approach often works. After
            closing the application, close pulseaudio, either using
            <span class="command"><strong>pulseaudio --kill</strong></span>
            or, if that fails, <span class="command"><strong>killall -KILL
            pulseaudio</strong></span> and then <span class=
            "command"><strong>rm -rf ~/.config/pulse/*</strong></span> (and
            perhaps also <span class="command"><strong>rm -rf
            ~/.pulse/*</strong></span> if you have used a very old version of
            pulse on this machine, then run <span class=
            "command"><strong>pulseaudio --verbose</strong></span> to restart
            it. If the daemon starts, restart the application. See
            <span class="command"><strong>man pulseaudio</strong></span> for
            more options.
          </p>
        </div>
      </div>
      <div class="content" lang="en" xml:lang="en">
        <h2 class="sect2">
          Contents
        </h2>
        <div class="segmentedlist">
          <div class="seglistitem">
            <div class="seg">
              <strong class="segtitle">Installed Programs:</strong>
              <span class="segbody">esdcompat, pacat, pacmd, pactl, padsp,
              pamon (symlink to pacat), paplay (symlink to pacat), parec
              (symlink to pacat), parecord (symlink to pacat), qpaeq,
              pasuspender, pax11publish, pulseaudio, and
              start-pulseaudio-x11</span>
            </div>
            <div class="seg">
              <strong class="segtitle">Installed Libraries:</strong>
              <span class="segbody">libpulse.so libpulse-mainloop-glib.so,
              libpulse-simple.so, libpulsecommon-13.0.so,
              libpulsecore-13.0.so, and libpulsedsp.so</span>
            </div>
            <div class="seg">
              <strong class="segtitle">Installed Directories:</strong>
              <span class="segbody">/etc/pulse, /usr/include/pulse,
              /usr/lib/cmake/PulseAudio, /usr/lib/{pulseaudio,pulse-13.0},
              /usr/libexec/pulse, and /usr/share/pulseaudio</span>
            </div>
          </div>
        </div>
        <div class="variablelist">
          <h3>
            Short Descriptions
          </h3>
          <table border="0" class="variablelist">
            <colgroup>
              <col align="left" valign="top" />
              <col />
            </colgroup>
            <tbody>
              <tr>
                <td>
                  <p>
                    <a id="esdcompat" name="esdcompat"></a><span class=
                    "term"><span class=
                    "command"><strong>esdcompat</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is the <span class="application">PulseAudio</span> ESD
                    wrapper script.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="pacat" name="pacat"></a><span class=
                    "term"><span class=
                    "command"><strong>pacat</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    plays back or records raw or encoded audio streams on a
                    <span class="application">PulseAudio</span> sound server.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="pacmd" name="pacmd"></a><span class=
                    "term"><span class=
                    "command"><strong>pacmd</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a tool used to reconfigure a <span class=
                    "application">PulseAudio</span> sound server during
                    runtime.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="pactl" name="pactl"></a><span class=
                    "term"><span class=
                    "command"><strong>pactl</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is used to control a running <span class=
                    "application">PulseAudio</span> sound server.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="padsp" name="padsp"></a><span class=
                    "term"><span class=
                    "command"><strong>padsp</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is the <span class="application">PulseAudio</span> OSS
                    Wrapper.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="pamon" name="pamon"></a><span class=
                    "term"><span class=
                    "command"><strong>pamon</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a symbolic link to <span class=
                    "command"><strong>pacat</strong></span>.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="paplay" name="paplay"></a><span class=
                    "term"><span class=
                    "command"><strong>paplay</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is used to play audio files on a <span class=
                    "application">PulseAudio</span> sound server.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="parec" name="parec"></a><span class=
                    "term"><span class=
                    "command"><strong>parec</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a symbolic link to <span class=
                    "command"><strong>pacat</strong></span>.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="parecord" name="parecord"></a><span class=
                    "term"><span class=
                    "command"><strong>parecord</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a symbolic link to <span class=
                    "command"><strong>pacat</strong></span>.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="pasuspender" name="pasuspender"></a><span class=
                    "term"><span class=
                    "command"><strong>pasuspender</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a tool that can be used to tell a local <span class=
                    "application">PulseAudio</span> sound server to
                    temporarily suspend access to the audio devices, to allow
                    other applications to access them directly.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="pax11publish" name="pax11publish"></a><span class=
                    "term"><span class=
                    "command"><strong>pax11publish</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is the <span class="application">PulseAudio</span> X11
                    Credential Utility.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="pulseaudio-prog" name=
                    "pulseaudio-prog"></a><span class="term"><span class=
                    "command"><strong>pulseaudio</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a networked low-latency sound server for Linux.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="qpaeq" name="qpaeq"></a><span class=
                    "term"><span class=
                    "command"><strong>qpaeq</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is an equalizer interface for <span class=
                    "application">PulseAudio</span> equalizer sinks (Requires
                    <a class="xref" href="../general/fftw.html" title=
                    "fftw-3.3.8">fftw-3.3.8</a> at build time).
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="start-pulseaudio-x11" name=
                    "start-pulseaudio-x11"></a><span class=
                    "term"><span class="command"><strong>start-pulseaudio-x11</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    starts <span class="application">PulseAudio</span> and
                    registers it to the X11 session manager.
                  </p>
                </td>
              </tr>
            </tbody>
          </table>
        </div>
      </div>
      <p class="updated">
        Last updated on 2020-02-17 20:27:03 -0600
      </p>
    </div>
    <div class="navfooter">
      <ul>
        <li class="prev">
          <a accesskey="p" href="pipewire.html" title=
          "Pipewire-0.3.2">Prev</a>
          <p>
            Pipewire-0.3.2
          </p>
        </li>
        <li class="next">
          <a accesskey="n" href="sbc.html" title="SBC-1.4">Next</a>
          <p>
            SBC-1.4
          </p>
        </li>
        <li class="up">
          <a accesskey="u" href="libdriv.html" title=
          "Chapter&nbsp;42.&nbsp;Multimedia Libraries and Drivers">Up</a>
        </li>
        <li class="home">
          <a accesskey="h" href="../index.html" title=
          "Beyond Linux� From Scratch     (System V Edition) - Version 2020-04-02">
          Home</a>
        </li>
      </ul>
    </div>
  </body>
</html>
